package viewInterfaces;

import java.awt.Component;
import java.util.Set;

import controllerInterfaces.IControllerTestResultGraphic;

/**
 * Interfaces used to display the graph generated from the test results.
 * 
 * @author Andy Cullache.
 */
public interface IViewTestResultGraphic {

	/**
	 * Sets the controller of instance that implements this interface.
	 * 
	 * @param myController      Test result graphic controller.
	 */
	void SetController(IControllerTestResultGraphic controllerTestGraphic);
	
	/**
	 * Set the metric occupied in the graphics algorithms.
	 * 
	 * @param metric      Metric that evaluates algorithms.
	 */
	void setMetric(String metric);
	
	/**
	 * Add a symbolism for each algorithm graph.
	 * 
	 * @param keySet      List of algorithms to graph.
	 */
	void setAlgorithms(Set<String> keySet);
	
	/**
	 * Add the graph to the main panel.
	 * 
	 * @param      Graphic component.
	 */
	void setGraphic(Component graphic);

}
